package com.example.annotation.test.myselfannotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @author xms
 * @description 需要登录才能访问
 * @time 2019年1月4日 下午3:58:11
 * @version 1.0
 */
@Target({ElementType.TYPE, ElementType.METHOD})//功能：指明了修饰的这个注解的使用范围，即被描述的注解可以用在哪里
//ElementType的取值包含以下几种：
//TYPE:类，接口或者枚举
//FIELD:域，包含枚举常量
//METHOD:方法
//PARAMETER:参数
//CONSTRUCTOR:构造方法
//LOCAL_VARIABLE:局部变量
//ANNOTATION_TYPE:注解类型
//PACKAGE:包
@Retention(RetentionPolicy.RUNTIME)//指明修饰的注解的生存周期，即会保留到哪个阶段。
//etentionPolicy的取值包含以下三种：
//SOURCE：源码级别保留，编译后即丢弃
//CLASS:编译级别保留，编译后的class文件中存在，在jvm运行时丢弃，这是默认值。
//RUNTIME： 运行级别保留，编译后的class文件中存在，在jvm运行时保留，可以被反射调用。
public @interface Auth {
	

	/*
	* @description: 测试注解
	* @param:
	* @return:
	* @author: keguazi
	* @date: 2020/3/20
	*/
	String value() default "";
}
